home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
MACD 5
/
MACD 5.bin
/
workbench
/
libs
/
rexmooslib.lha
/
MOOS
/
Tests
/
rexx_dos.rexx
< prev
next >
Wrap
OS/2 REXX Batch file
|
1997-02-03
|
6KB
|
261 lines
/*
* rexx_dos.library
*
* Test file...
*/
OPTIONS RESULTS
lib = 'rexxMOOS.library'; IF ~SHOW('L',lib) THEN CALL ADDLIB(lib,100,-30)
/*
* ReadArgs()
*/
CALL print(4,'#',"ReadArgs(string,template,options)")
DROP file
str = "mio tuo suo add"
tpl = "FILE/M,ADD/S,QUIET=Q/S"
CALL print(20,'-','ReadArgs("'str'","'tpl'","opt.")')
IF ReadArgs(str,tpl,"opt.") THEN DO
SAY "OPT.FILE.COUNT =" opt.file.count
DO n = 0 FOR opt.file.count
SAY "OPT.FILE."n "=" opt.file.n
END
SAY "OPT.ADD =" opt.add
SAY "OPT.QUIET =" opt.quiet
END
DROP opt.
str = "29 12 68 A D"
tpl = "ID/N/M,Append=A/S,Delete=D/S"
CALL print(20,'-','ReadArgs("'str'","'tpl'")')
IF ReadArgs(str,tpl) THEN DO
SAY "ID.COUNT =" id.count
DO n = 0 FOR id.count
SAY "ID."n " =" id.n
END
SAY "APPEND =" append
SAY "DELETE =" delete
END
DROP id. append delete
/*
* Info()
*/
CALL print(4,'#',"Info(path,options)")
path = "SYS:"
CALL print(20,'-','Info("'path'","ex.")')
IF Info(path,"ex.") THEN DO
SAY "VolumeName " ex.VolumeName
SAY "DateStamp " ex.DateStamp
SAY "NumSoftErrors " ex.NumSoftErrors
SAY "UnitNumber " ex.UnitNumber
SAY "DiskState " ex.DiskState
SAY "NumBlocks " ex.NumBlocks
SAY "NumBlocksUsed " ex.NumBlocksUsed
SAY "BytesPerBlock " ex.BytesPerBlock
SAY "DiskType " ex.DiskType
SAY "InUse " ex.InUse
END
DROP ex.
/*
* Delay()
*/
CALL print(4,'#',"Delay(ticks)")
ticks = 100
CALL print(20,'-',"Delay("ticks")")
CALL TIME('r'); CALL Delay(ticks)
SAY ticks "ticks ==" TIME('e') "secs..."
CALL print(20,'-',"Delay("ticks")") /* Now we're sure that the library */
CALL TIME('r'); CALL Delay(ticks) /* is loaded in the system */
SAY ticks "ticks ==" TIME('e') "secs..."
/*
* SetVar()
* GetVar()
* DeleteVar()
*/
CALL print(4,'#',"SetVar(name,value,options)")
var = "test"
val = "the variable content..."
CALL print(20,'-','SetVar("'var'",val)')
SAY SetVar(var,val)
CALL print(4,'#',"GetVar(name,options)")
CALL print(20,'-','GetVar("language")')
SAY "language ==" GetVar("language")
CALL print(20,'-','GetVar("'var'","Exists")')
SAY GetVar(var,"Exists")
CALL print(4,'#',"DeleteVar(name,options)")
CALL print(20,'-','DeleteVar("'var'")')
SAY DeleteVar(var)
/*
* SplitPath()
*/
CALL print(4,'#',"SplitPath(path,options)")
dir = "DF0:foo/bar/moos-startup"
CALL print(20,'-',"SplitPath('"dir"')")
SAY SplitPath(dir)
CALL print(20,'-',"SplitPath('"dir"','Path')")
SAY SplitPath(dir,"Path")
CALL print(20,'-',"SplitPath('"dir"','test.')")
SAY SplitPath(dir,"test.")
SAY "test.DirPart ==" test.DirPart
SAY "Test.FilePart ==" test.FilePart
DROP test.
/*
* MatchPattern()
*/
CALL print(4,'#',"MatchPattern(pattern,string,options)")
CALL print(20,'-','MatchPattern("#?Con#?","L:Kingcon-handler")')
SAY MatchPattern("#?Con#?","L:Kingcon-handler")
CALL print(20,'-','MatchPattern("#?Con#?","L:Kingcon-handler","Case")')
SAY MatchPattern("#?Con#?","L:Kingcon-handler","Case")
/*
* AddPart()
*/
CALL print(4,'#',"AddPart(dirname,filename)")
dir = "DF0:"
file = "bar"
CALL print(20,'-',"AddPart("'"'dir'","'file'"'")")
SAY AddPart(dir,file)
dir = "RAM:foo"
file = "bar"
CALL print(20,'-',"AddPart("'"'dir'","'file'"'")")
SAY AddPart(dir,file)
dir = "RAM:foo/"
file = "bar/sub_bar"
CALL print(20,'-',"AddPart("'"'dir'","'file'"'")")
SAY AddPart(dir,file)
/*
* WriteBlock()
*/
CALL print(4,'#',"WriteBlock(file,string,options)")
str = "Test string..."
CALL print(20,'-','WriteBlock("T:prova","'str'")')
IF WriteBlock("T:prova",str) THEN DO
ADDRESS COMMAND 'Type "T:prova"'
CALL print(20,'-','WriteBlock("T:prova",str,"Append")')
IF WriteBlock("T:prova",str,"Append") THEN DO
ADDRESS COMMAND 'Type "T:prova"'
END
ADDRESS COMMAND 'Delete "T:prova" QUIET'
END
/*
* Examine()
*/
CALL print(4,'#',"Examine(path,options)")
pat = "c:List"
CALL print(20,'-','Examine("'pat'","ex.")')
IF Examine(pat,"ex.") THEN DO
SAY "DiskKey " ex.DiskKey
SAY "DirEntryType" ex.DirEntryType
SAY "FileName " ex.FileName
SAY "Protection " ex.Protection
SAY "EntryType " ex.EntryType
SAY "Size " ex.Size
SAY "NumBlocks " ex.NumBlocks
SAY "Comment " ex.Comment
SAY "WeekDay " ex.WeekDay
SAY "Date " ex.Date
SAY "Time " ex.Time
SAY "OwnerUID " ex.OwnerUID
SAY "OwnerGID " ex.OwnerGID
END
DROP ex.
/*
* ReadBlock()
*/
CALL print(4,'#',"ReadBlock(file,options)")
CALL print(20,'-','ReadBlock("ENV:language")')
SAY "language ==" ReadBlock("ENV:language")
/*
* ExAll()
*/
CALL print(4,'#',"ExAll(pattern,options)")
DROP ex.
pat = "devs:#?.device"
CALL print(20,'-','ExAll("'pat'","ex.")')
IF ExAll(pat,"ex.") THEN
DO n = 0 FOR ex.count
SAY "Name" ex.n.Name
END
DROP ex. /* we need a new, clear stem */
pat = "Libs:rexx#?" /* the pattern to be examine */
CALL print(20,'-','ExAll("'pat'","ex. Type 3")')
IF ExAll(pat,"ex. Type 3") THEN
DO n = 0 FOR ex.count
SAY "Name" ex.n.Name
SAY "Type" ex.n.Type
SAY "Size" ex.n.Size
END
DROP ex.
pat = "Libs:req#?"
CALL print(20,'-','ExAll("'pat'","ex. Type 6")')
IF ExAll(pat,"ex. Type 6") THEN
DO n = 0 FOR ex.count
SAY "Name" ex.n.Name
SAY "Type" ex.n.Type
SAY "Size" ex.n.Size
SAY "Prot" ex.n.Prot
SAY "WDay" ex.n.WDay
SAY "Date" ex.n.Date
SAY "Time" ex.n.Time
SAY "Note" ex.n.Note
END
DROP ex.
ADDRESS COMMAND 'Wait' 2
SAY
EXIT 0
print: PROCEDURE
PARSE ARG pos,char,str
IF char = '#' THEN SAY '0a0a'x
SAY COPIES(char,pos) || OVERLAY(" "str" ",COPIES(char,78 - pos))
RETURN